module.exports = function(grunt) {
  "use strict";

  // 项目配置
  grunt.initConfig({
    pkg: grunt.file.readJSON('package.json'),
    uglify: { //js压缩插件
      options: {
        banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n',
        report: 'min',
        mangle: true
      },
      build: {
        src: 'build/<%= pkg.name %>.js',
        dest: 'build/<%= pkg.name %>.min.js'
      }
    },
    concat: { //合并多个文件的代码到一个文件中
      options: {
        //定义一个字符串插入每个文件之间用于连接输出
        separator: ''
      },
      dist: {
        src: [
          'frontend/main.js',
          'frontend/*/*.js'
        ],
        dest: 'build/<%= pkg.name %>.js'
      }
    },
    jshint:{ //js测试
      build: ['Gruntfile.js','angular_model/controllers/*.js'],
      options: {
        jshintrc: '.jshintrc'
      }
    },
    watch: {
      build: {
        files: ['frontend/*/*.*'],
        tasks: ['concat','uglify'],
        options: {spawn: false}
      }
    }
    // cssmin: {
    //   combine: {
    //     files: {
    //       'build/<%= pkg.name %>.css': ['stylesheets/*.css']
    //     }
    //   }
    // },
    // ngAnnotate: {
    //   cat: {
    //     files: {
    //       'build/<%= pkg.name%>.js': ['build/<%= pkg.name%>.js']
    //     }
    //   }
    // }

  });

  grunt.loadNpmTasks('grunt-contrib-concat');
  grunt.loadNpmTasks('grunt-contrib-uglify');
  grunt.loadNpmTasks('grunt-contrib-jshint');
  grunt.loadNpmTasks('grunt-ng-annotate');
  grunt.loadNpmTasks('grunt-contrib-watch');
  // grunt.loadNpmTasks('grunt-contrib-cssmin');
  // grunt.loadNpmTasks('grunt-ng-annotate');

  // 默认任务
  grunt.registerTask('default', ['concat','uglify','watch']);
};
